/**
 * 模型关系配置文件
 * 用于定义和初始化模型之间的关系
 */
const User = require('../models/User');
const Category = require('../models/Category');
const Bill = require('../models/Bill');

// 定义模型关系
function initModels() {
  // 用户和账单的关系：一个用户可以有多个账单
  User.hasMany(Bill, {
    foreignKey: 'user_id',
    as: 'userBills'
  });

  Bill.belongsTo(User, {
    foreignKey: 'user_id',
    as: 'billUser'
  });

  // 分类和账单的关系：一个分类可以有多个账单
  Category.hasMany(Bill, {
    foreignKey: 'category_id',
    as: 'categoryBills'
  });

  Bill.belongsTo(Category, {
    foreignKey: 'category_id',
    as: 'billCategory'
  });

  console.log('模型关系初始化成功');
}

module.exports = { initModels };